/* 
 * File:   app.h
 * Author: jesus
 *
 * Created on 7 de junio de 2010, 18:32
 */

#ifndef _APP_H
#define	_APP_H
#include "simuladorCircuitos.h"
#include "componente.h"

class App{
    SimuladorCircuitos simulador;
public:
    void prueba();
};
void App::prueba(){
    TipoComponente t1=INTERRUPTOR;
    Estado est=V;

    //Componente1  el interruptor 1 que por defecto esta apagado
    Componente componente1(t1);
    //Se agrega el interruptor al circuirto
    simulador.nuevoComponente(componente1);

    //Componente2 es el interruptor  enciendo  
    Componente componente2(t1);
    componente2.salidaInterruptor(est);
    //Se agrega el interruptor al circuirto
    simulador.nuevoComponente(componente2);

    //Componente3 es una puerta and
    t1=AND;    
    Componente componente3(t1);
    //Le conecto las entradas, interruptor apagado y el otro encendido
    componente3.conectarEntrada(componente1);
    componente3.conectarEntrada(componente2);
    //Se agrega el componente3 al circuirto
    simulador.nuevoComponente(componente3);

    t1=OR;    
    Componente componente4(t1);
    //Le conecto las entradas, componente3 y el otro interruptor encendido
    componente4.conectarEntrada(componente3);
    componente4.conectarEntrada(componente2);
    //Se agrega el componente3 al circuirto
    simulador.nuevoComponente(componente4);

    t1=NOT;    
    Componente componente5(t1);
    //Le conecto a la entrada el  componente4
    componente5.conectarEntrada(componente4);
    //Se agrega el componente3 al circuirto
    simulador.nuevoComponente(componente5);
    
    simulador.simular();

    
    
}
#endif	/* _APP_H */

